<html>

	<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">

	<body>
		<h1>Release testing</h1>
		A release test must be done on code committed to git.
		Commit, then test. That way one can know for sure *what* code was actually tested.
		<p>
		Note that this testing document does not have anything to do with testing that is done
		before committing to git. It is a test document for released code. Pre-commit testing
		is done mostly by the developer who has written the change. Sometimes code is committed
		to synchronize work, even if it has known problems. Release testing is
		done on code believed to be stable, often a couple of weeks old, and not by
		the developers, but rather users and community testers who has the requisite hardware
		and test setup. Also the testing will take place over an extended period of time.
		<p>
		All of the above makes it imperative that there can be no doubt about *which* code
		is tested and thus all tests refer to committed code by subversion number.
		<h1>Release procedure</h1>
		OpenOCD mainline is work in progress.
		Expect it to change daily and to have some quirks.
		<p>If you need the latest released and tested version, look for binary snapshots of OpenOCD. Worst case look up the test result table below for the features that are important to you and extract and build the version that has the right cocktail of working features for you. You can also work with the community to address the problems you are seing. Testing work and bug reports are highly appreciated.</p>
		<p>The OpenOCD community may decide to create release branches. If
		this happens, then a branch will be created from OpenOCD mainline.
		The particular version to create that branch might be an older version
		rather than the latest and greatest. Fixes are then ported to that
		release branch from OpenOCD mainline.</p>
		<hr>
		<h2>OpenOCD smoketests</h2>
		This is a set of tests that exercise the entire OpenOCD system and various targets. It
		is a small suite of systemwide smoketests.
		<p>
		<a href="smoketests.html">Smoketests</a>
		<h2>Test cases</h2>
		Additionally OpenOCD has test cases that target specific functionality more precisely.
		<p>
		A full release test must include both smoketests and unit testing.
		<p>
		<a href="testcases.html">Test cases</a>
	</body>

</html>
